//删除
function shanchu() {
    var row = $('#dg').datagrid('getSelected');
    if (row) {
        if (row.state != 0) {
            $.messager.alert('提示', '新单状态下才可删除，请确认数据重试');
            return;
        }
        $.messager.confirm('Confirm', '是否确认删除' + row.caijiandanhao + '?', function (r) {
            if (r) {
                $.ajax({
                    url: path + "/tailor/del.do",
                    data: {
                        id: row.id
                    },
                    dataType: 'json',
                    success: function (data) {
                        if (data.code == 200) {
                            $.messager.show({
                                title: '提示',
                                msg: '删除成功',
                                timeout: 3000,
                                showType: 'slide'
                            });
                            //重新加载
                            //value是搜索框里的值,name是选择框里的值
                            load();
                        } else {
                            $.messager.alert('提示', data.msg);
                        }
                    }
                })
            }
        })
    } else {
        $.messager.alert('提示', '请选中要删除的数据');
    }
}
//重新加载
function load() {
    var startTime = $("#startTime").val();
    var endTime = $("#endTime").val();
    // 判断日期有效性
    startDate = startTime.replace("-", "/");//替换字符，变成标准格式
    endDate = endTime.replace("-", "/");//替换字符，变成标准格式
    var d1 = new Date(Date.parse(startDate));
    var d2 = new Date(Date.parse(endDate));
    if (d1 > d2) {
        $.messager.alert('提示', '开始日期不能大于结束日期');
        return;
    }
    var tiepai = $("#tiepai").combobox("getValue");
    if (tiepai == "全部") {
        tiepai = "";
    }
    $("#dg").datagrid({
        url: path + '/tailor/list.do',
        queryParams: {
            state: $("#product").searchbox("getName"),
            product: $("#product").searchbox("getValue"),
            startTime: startTime,
            endTime: endTime,
            tiepai: tiepai
        }
    })
}
//打开窗口
function winOpen(code) {
    loadTiepas();
    //新增
    if (code == 0) {
        $("#id").val("");
        $("#caijianren").val("");
        $("#productCombobox").combobox("setValue", "");
        $('#w').dialog({title: "新增裁剪单"});
        $("#w").window("open");
        $('#caijiandanhao').val('CJ' + Date.parse(new Date()) + '' + Math.round(Math.random() * 9 + 1));
        $("#dg3").datagrid("loadData", {
            rows: []
        })
        $("#zongjianshu").text("0");
    } else {//修改
        var row = $('#dg').datagrid('getSelected');
        if (row) {
            if (row.state != 0) {
                $.messager.alert('提示', '新单状态下才可修改，请确认数据重试');
                return;
            }
            $.ajax({
                url: path + "/tailor/find/id.do",
                data: {
                    id: row.id
                },
                dataType: 'json',
                success: function (data) {
                    if (data.code == 200) {
                        $("#id").val(row.id);
                        $("#caijianren").val(data.data[0].caijianren);
                        $("#tiepais").combobox("setValue", data.data[0].tiepai);
                        $("#caijiandanhao").val(data.data[0].caijiandanhao);
                        $("#productCombobox").combobox("setValue", data.data[0].product);
                        $("#dg3").datagrid("loadData", data.data);
                        var sum = 0;
                        for (i = 0; i < data.data.length; i++) {
                            sum += data.data[i].caijianshuliang;
                        }

                        $("#zongjianshu").text(sum);
                        $("#w").window("open");
                    } else {
                        $.messager.alert('提示', data.msg);
                    }
                }
            })
        } else {
            $.messager.alert('提示', '请选择要修改的数据');
        }
        $('#w').dialog({title: "修改裁剪单"});
    }
}
/*加载贴牌*/
function loadTiepas() {
    $("#tiepais").combobox({
        url: path + '/tailor/tiepai.do',
        valueField: 'tiepai',
        textField: 'tiepai',
        panelHeight: 150,
        width: 150,
        height: 20
    })
}
//加载所有款号
$(function () {
    $("#dg").datagrid({
        url: path + '/tailor/list.do'
    });
    loadProduct()
})

var product = "";
var productName = "";
var style = "";
var pinpai = "";
var id = "";
function loadProduct() {
    $('#productCombobox').combobox({
        url: path + '/production/combobox/list.do',
        valueField: 'id',
        textField: 'product',
        onSelect: function (record) {
            product = record.product;
            productName = record.productName;
            style = record.style;
            pinpai = record.pinpai;
            id = record.id;
            $('#dg3').datagrid('loadData', {
                total: 0,
                rows: []
            });// 重置dataGRID
            $('#zongjianshu').text(0);
        },
        onHidePanel: function () {
            //根据id取查询颜色和尺码
            var table = "<table><tr><td></td>";
            $.ajax({
                url: path + '/production/find/id.do',
                data: {
                    id: id
                },
                async: false,
                dataType: 'json',
                success: function (data) {
                    if (data.code == 200) {
                        var size = data.data.sizes;
                        var color = data.data.colors;
                        //处理尺码
                        size = size.substring(1, size.length - 1);
                        var sizes = size.split(",");
                        //处理颜色
                        color = color.substring(1, color.length - 1);
                        var colors = color.split(",");
                        //遍历
                        for (var i = 0; i < sizes.length; i++) {
                            table += "<td align='center'><span class='cm'>" + sizes[i] + "</span></td>"
                        }
                        table += "<td align='center'>小计</td></tr>"
                        //遍历
                        for (var i = 0; i < colors.length; i++) {
                            table += "<tr><td>" + colors[i] + "</td>";
                            table += "<td><input name='shuliang' onkeyup='diaoyong(this)'  class='easyui-validatebox cs'  validType='INT' style='width:50px;border-radius:5px'></td>"
                            for (var j = 0; j < sizes.length - 1; j++) {
                                table += "<td><input name='shuliang'   class='easyui-validatebox cs'  validType='INT' style='width:50px;border-radius:5px'></td>"
                            }
                            table += "<td><input name='shuliang' onkeyup='diaoyong1(this)'  class='easyui-validatebox '  validType='YZ' style='width:50px;border-radius:5px'></td>"
                            table += "</tr>"
                        }
                    }
                }
            })//ajax
            table += "</table>";
            $('#sp').empty();
            $('#sp').append(table)
            $.parser.parse($("#sp"));

            $("#sp .cs").keyup(function () {
                var sum = 0;
                for (var j = 1; j < $("#sp table td").length / $("#sp table tr").length - 1; j++) {
                    if (/^[+]?[0-9]+\d*$/.test(parseInt($("#sp table").find("tr").eq($(this).parents('table tr').index()).find("td").eq(j).children().val()))) {
                        sum += parseInt($("#sp table").find("tr").eq($(this).parents('table tr').index()).find("td").eq(j).children().val())
                    }
                }
                $("#sp table").find("tr").eq($(this).parents('table tr').index()).find("td").eq($("#sp table td").length / $("#sp table tr").length - 1).children().val(sum)
            });
            if ($('#productCombobox').combobox('getValue') == '') {
                $('#sp').empty();
                $('#cc').combo('hidePanel');
            } else {

                $('#cc').combo('showPanel');
            }
            flg = false
            $("#sp table").find("tr").eq(1).find("td").eq(1).children().focus();
        },
        onShowPanel: function () {
            $('#cc').combo('hidePanel');
        }
    });
}
//删除
function removeit() {
    var selRow = $('#dg3').datagrid('getSelections')
    if (selRow == 0) {
        $.messager.alert("提示信息", '请选择要操作的数据');
        return
    } else {
        $.messager.confirm('提示信息', '真的要执行删除操作', function (r) {
            if (r) {
                for (var i = 0; i < selRow.length; i++) {
                    var index = $('#dg3').datagrid(
                        'getRowIndex', selRow[i]);
                    $('#dg3').datagrid('cancelEdit', editIndex)
                        .datagrid('deleteRow', index);
                    zongjia();
                    var count = $('#dg3').datagrid('getRows').length
                    $('#count span').empty();
                    $('#count span').text(count);
                    editIndex = undefined;
                }
            }
        })
    }
}

// 保存
function accept() {
    var flag = true;
    if (endEditing()) {
        if (shu()) {
            for (var i = 1; i < $("#sp table tr").length; i++) {
                for (var j = 1; j < $("#sp table td").length / $("#sp table tr").length - 1; j++) {
                    if ($("#sp table").find("tr").eq(i).find("td").eq(j).children().val() == '' || $("#sp table").find("tr").eq(i).find("td").eq(j).children().val() == 0) {
                        continue
                    }
                    $('#dg3').datagrid('appendRow', {
                        caijianshuliang: $("#sp table").find("tr").eq(i).find("td").eq(j).children().val(),
                        color: $("#sp table").find("tr").eq(i).find("td").eq(0).text(),
                        size: $("#sp table").find("tr").eq(0).find("td").eq(j).children('.cm').text(),
                        product: product,
                        productName: productName,
                        style: style,
                        pinpai: pinpai,
                        id: id
                    });
                }
            }
            var count = $('#dg3').datagrid('getRows').length
            $('#count span').empty();
            $('#count span').text(count);
            $('#productCombobox').combo('setValue', '')
            $('#sp').empty();
            $("#sp table input").form('clear')
            $('#dg3').datagrid('acceptChanges');
            $('#dg3').datagrid('clearSelections');
            //zongjia()
            $("#sp table input").val('')
            flag = false;
            iq = 1
            flg = false// //解决enter键第一次冲突问题

            if (flag) {
                var drow = $('#dg3').datagrid('getSelections')
                for (var i = 0; i < drow.length; i++) {
                    var index = $('#dg3').datagrid(
                        'getRowIndex', drow[i]);
                    $('#dg3').datagrid('beginEdit', index);

                    $('#dg3').datagrid('endEdit', index);
                }
            }
            //zongjia()
            f = false;
            $('#cc').combo('hidePanel');
            $('#productCombobox').combobox("setValue", "");
            $('#productCombobox').next('span').find('input').eq(0).focus()// 聚焦到combobox
        }
    }
    zongjia()
}
/*
 * 计算此单总价，z总包数，总件数
 *
 */
function zongjia() {
    var rows = $("#dg3").datagrid("getRows");
    var zongjianshu = 0;
    for (var i = 0; i < rows.length; i++) {
        zongjianshu += (parseFloat(rows[i].caijianshuliang))
    }
    $('#zongjianshu').text(zongjianshu);
}
var editIndex = undefined;
function endEditing() {
    if (editIndex == undefined) {
        return true
    }
    if ($('#dg3').datagrid('validateRow', editIndex)) {
        $('#dg3').datagrid('endEdit', editIndex);
        editIndex = undefined;
        return true;
    } else {
        return false;
    }
}
$.extend($.fn.validatebox.defaults.rules, {
    INT: {//
        validator: function (value) {
            return /^[+]?[1-9]+\d*$/i.test(value);
        },
        message: '请输入合法的数字'
    },
});
$.extend($.fn.validatebox.defaults.rules, {
    YZ: {
        validator: function (value) {
            if (!/^[+]?[0-9]+\d*$/i.test(value)) {
                return false;
            }
            value = value - 0;
            var sum = ($("#sp table td").length / $("#sp table tr").length - 1) - 1
            if (value % sum == 0) {
                return true;
            } else {
                return false;
            }
        },
        message: '输入数字不合法'
    }
});

function save() {
    /* if ($("#caijianren").val().trim() == "") {
     $("#caijianren").focus();
     return;
     }*/
    var aa = '[';
    var rows = $("#dg3").datagrid("getRows");
    if (rows != '') {
        var sum = 0;
        for (var i = 0; i < rows.length; i++) {
            aa += "{'caijianshuliang':'" + rows[i].caijianshuliang + "','color':'" + rows[i].color + "','size':'" + rows[i].size + "','id':'" + rows[i].id + "'},"
            sum += rows[i].caijianshuliang - 0;
        }
        var shuliang = $("#zongjianshu").text() - 0;
        if (sum != shuliang) {
            $.messager.alert("提示", "数据异常，请检查数据重新尝试");
            return;
        }
        aa = aa.substring(0, aa.length - 1) + "]";
        $('#save').linkbutton('disable');
        $.ajax({
            url: path + '/tailor/save.do',
            type: "POST",
            data: {
                id: $("#id").val(),
                caijiandanhao: $('#caijiandanhao').val(),
                tiepai: $('#tiepais').combobox("getValue"),
                caijianren: $("#caijianren").val(),
                a: aa
            },
            dataType: "json",
            success: function (data) {
                if (data.code == 200) {
                    $.messager.show({
                        title: '提示',
                        msg: '保存成功！',
                        timeout: 1000,
                        showType: 'slide'
                    });
                    load();
                    $("#w").window("close")
                } else {
                    $.messager.alert("提示", data.msg);
                }
            },
            complete: function (XMLHttpRequest, status) { // 请求完成后最终执行参数
                if (status == 'timeout') {// 超时,status还有success,error等值的情况
                    ajaxTimeoutTest.abort();
                    $.messager.show({
                        title: '提示',
                        msg: '请求超时！',
                        timeout: 1000,
                        showType: 'slide'
                    });
                }
                $('#save').linkbutton('enable');
            }
        })
    } else {
        $.messager.alert("提示", '没有要保存的数据!')
    }
}

// 打印吊牌
function opendp() {
    var row = $('#dg').datagrid("getSelected")
    if ($('#dg').datagrid("getSelected") != null) {
        window.open('diaopai.jsp?tailorid=' + row.id)
    } else {
        $.messager.alert("提示", '请选择操作对象');
    }
}
//修改成本价
function chengbenjia() {
    var row = $('#dg').datagrid("getSelected")
    if (row) {
        if (row.state != 0) {
            $.messager.alert('提示', '新单状态下才可修改成本价，请确认数据重试');
            return;
        }
        $("#wchengbenjia").window("open");
        $("#cbj").numberbox("setValue", row.chengbenjia);
        $("#caijianid").val(row.id);
        $("#cbj").next().find('input').focus();
    } else {
        $.messager.alert("提示", '请选择要操作的数据');
    }
}
//保存成本价
function saveChengbenjia() {
    var id = $("#caijianid").val();
    var chengbenjia = $("#cbj").numberbox("getValue");
    $.ajax({
        url: path + "/tailor/save/chengbenjia.do",
        data: {
            id: id,
            chengbenjia, chengbenjia
        },
        dataType: 'json',
        success: function (data) {
            if (data.code == 200) {
                $.messager.show({
                    title: '提示',
                    msg: '修改成功',
                    timeout: 3000,
                    showType: 'slide'
                });
                //重新加载
                //value是搜索框里的值,name是选择框里的值
                load();
                $("#wchengbenjia").window("close");
            } else {
                $.messager.alert('提示', data.msg);
            }
        }
    })
}
//已全入库 结束订单
function overOrder() {
    var row = $('#dg').datagrid("getSelected")
    if (row) {
        if (row.state != 1) {
            $.messager.alert('提示', '进行状态下才可进行此操作，请确认数据重试');
            return;
        }
        $.messager.confirm('Confirm', '是否确认结束裁剪单：' + row.caijiandanhao + '? 结束裁剪后该单不可进行入库操作', function (r) {
            if (r) {
                $.ajax({
                    url: path + "/tailor/over.do",
                    data: {
                        id: row.id
                    },
                    dataType: 'json',
                    success: function (data) {
                        if (data.code == 200) {
                            $.messager.show({
                                title: '提示',
                                msg: '操作成功',
                                timeout: 3000,
                                showType: 'slide'
                            });
                            //重新加载
                            //value是搜索框里的值,name是选择框里的值
                            load();
                        } else {
                            $.messager.alert('提示', data.msg);
                        }
                    }
                })
            }
        })

    } else {
        $.messager.alert("提示", '请选择要操作的数据');
    }

}

function shu() {
    for (var i = 1; i < $("#sp table tr").length; i++) {
        for (var j = 1; j < $("#sp table td").length / $("#sp table tr").length - 1; j++) {
            if ($("#sp table").find("tr").eq(i).find("td").eq(j).children().val() != '' && $("#sp table").find("tr").eq(i).find("td").eq(j).children().val() != 0) {
                if (!/^[+]?[1-9]+\d*$/.test($("#sp table").find("tr").eq(i).find("td").eq(j).children().val())) {
                    $('#cc').combo('showPanel')
                    $("#sp table").find("tr").eq(i).find("td").eq(j).children().focus()
                    return false;
                }
                if ($("#sp table").find("tr").eq(i).find("td").eq(j).children().attr('placeholder') != '')
                    if (parseInt($("#sp table").find("tr").eq(i).find("td").eq(j).children().attr('placeholder')) < $("#sp table").find("tr").eq(i).find("td").eq(j).children().val()) {
                        $('#cc').combo('showPanel')
                        $("#sp table").find("tr").eq(i).find("td").eq(j).children().focus()
                        return false;
                    }
            }
        }
    }
    if ($("#sp table td").length == 0) {
        return false
    }
    return true;
}